In the majority of today's work places, mobile devices have become standard for employees to retrieve job assignments, review job schedules, document work performed, and respond to customer feedback. With the increased usage of mobile devices, the consumption of necessary data to perform various job functions also increases. In many ways, employees who utilize mobile technologies demand data to be accessible from anywhere and at any time. The speed of data retrieval becomes very important in an employees' mobile technology adoption rate. From a corporation's perspective, a higher employee adoption rate means a higher return on investment on a corporation's mobile strategies.
Presently, Enterprise asset management (EAM) software provides companies with a way to access, share, and manage the physical assets of an organization on a common platform. EAM is utilized to operate and maintain assets in a variety of industries, for example, airlines/airports, oil/gas companies, higher education (i.e., facilities), government, and hospitals, to name a few. Generally, EAM software can be utilized with any organization that has physical assets to maintain, and can be utilized to manage all types of assets—including plant, production, infrastructure, facilities, transportation and communications, among others.
One popular EAM software utilized across a variety of industries is IBM's Maximo® asset management software, which allows for managing physical assets on a common platform in asset-intensive industries and offers “built in” mobile access. The Maximo® asset management software is a popular choice, having a majority of the market share for EAM software. While the Maximo® software can be accessed on mobile devices by users in the field, accessing data in this manner requires an Internet connection in order to get the data on a real-time basis. However, mobile connectivity is not always available and can be dropped at any time due to a variety of reasons, including, for example, inaccessibility in a particular area. At the present time, the prior art lacks reliable systems that allow employees who utilize mobile technologies to demand data to be accessible from anywhere at any time. For those users who are out in the field, in certain remote or other areas, a user may be without coverage for days, and unable to take advantage of their mobile device on-line to transfer information and data in real-time.
The traditional method of downloading data onto the user's mobile device entails the device making requests to the particular server through standard web http protocol. Using the http request method, the data is transferred between the mobile device and the server in byte streams. Depending on the mobile device chosen, i.e., iOS, Android, or Windows, the limit of each byte stream for each request is different across the various mobile platforms. Each request and response between the mobile device and the server must be small enough to ensure a complete and uninterrupted data set. Due to this limitation, with a potential large user data set, there are often many round trips from the device to the server, hence, a substantial amount of time to download a users' requested data using this traditional method is often required. This is widely known in the art as the classic data bottleneck problem associated with making conventional client data requests to an enterprise server. Conventionally, a client operating a mobile device makes a data request to an enterprise server via an intermediary server. The data request may be classified as a round robin request which is initiated by a client request sent to the intermediary server. Upon receiving the request, the intermediary server relays the client (HTTP) request to the enterprise server, constituting an uplink portion of the round robin request. Thereafter, during the downlink process, the requested data is retrieved by the enterprise server and transmitted back to the intermediary server which in turn relays the data back to the mobile device. Notably, the classic data bottleneck problem occurs during the downlink process given the enormous number of requests that may be received at the enterprise server over time. The data bottleneck overwhelms the enterprise server restricting its capacity for satisfying an enormous request volume. The present invention overcome the classic data bottleneck problem, first by establishing a unique method of processing the data received at the intermediary server from the enterprise server and secondly, by establishing a series of dynamically adjustable wait queues at the intermediary server to service the client requests in a timely and efficient manner.
In addition to limitations on the request and response by byte size, server and user device constraints also play a factor for download speeds. Each company chooses how to allocate their server resources, and within an enterprise application-hosting environment, server resources are often limited due to internal reasons such as a company's budget and funding, resource allocation, and sharing across various applications. This is in contrast to consumer applications, where setting up server farms to handle mass amount of traffic is the norm. Generally, the server resources allocated for an enterprise application do not have the same type of capacity. Likewise, in an enterprise setting, companies themselves decide on the types of mobile devices they wish to use and standardize, with many corporations moving to the BYOD (bring your own device) strategy. To accommodate the various device specifications, an enterprise mobile software application not only needs to run on various types of devices, but also needs to accommodate the performance of the different devices both online in real-time and when downloading data for later off-line usage.